From: Adrian Vovk Date: Thu, 1 May 2025 22:34:52 +0000 (-0400) Subject: main: Register session with GDM on startup X-Git-Tag: archive/raspbian/50.5-1+rpi1~1^2~44^2~102 X-Git-Url: https://dgit.raspbian.org/%22http://www.example.com/cgi/%22/%22http:/www.example.com/cgi/%22?a=commitdiff_plain;h=32a013304f8c507cb72a5419c7f4b7c553253520;p=gnome-shell.git main: Register session with GDM on startup When no monitor is connected, gnome-shell starts but never emits `startup-prepared` nor `startup-complete`. As a result, GDM never detects that the shell has launched and plymouthd remains running, preventing the system from reaching graphical.target. Ensure that registerSessionWithGDM() is called even when no monitor is connected, so GDM can terminate plymouthd and allow the system to reach graphical.target properly. Part of https://gitlab.gnome.org/GNOME/gdm/-/merge_requests/285 Part-of: --- diff --git a/js/ui/main.js b/js/ui/main.js index c911ab217..90e78a197 100644 --- a/js/ui/main.js +++ b/js/ui/main.js @@ -323,6 +323,8 @@ async function _initializeUI() { extensionManager = new ExtensionSystem.ExtensionManager(); extensionManager.init(); + LoginManager.registerSessionWithGDM(); + if (sessionMode.isGreeter && screenShield) { layoutManager.connect('startup-prepared', () => { screenShield.showDialog(); @@ -369,8 +371,6 @@ async function _initializeUI() { sessionMode.currentMode !== 'initial-setup') _handleLockScreenWarning(); - LoginManager.registerSessionWithGDM(); - if (perfModule) { const perfOutput = GLib.getenv('SHELL_PERF_OUTPUT'); Scripting.runPerfScript(perfModule, perfOutput);